package com.aiobc.community.common.business.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 设备基本信息
 * </p>
 *
 * @author zhangzl
 * @since 2021-01-20
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="DeviceInfo对象", description="设备基本信息")
public class DeviceInfo extends Model<DeviceInfo> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键id")
    @TableId(value = "serial_code", type = IdType.INPUT)
    private String serialCode;

    @ApiModelProperty(value = "设备编码")
    private String deviceNo;

    @ApiModelProperty(value = "设备名称")
    private String deviceName;

    @ApiModelProperty(value = "设备类型:1-摄像头;2-门闸;3-门窗")
    private Integer deviceType;

    @ApiModelProperty(value = "设备型号")
    private String deviceModel;

    @ApiModelProperty(value = "设备汇总状态: 0-故障,1-在线,2-离线")
    private Integer status;

    @ApiModelProperty(value = "是否启用:0-否;1-是")
    private Integer enable;

    @ApiModelProperty(value = "sim卡号")
    private String cardId;

    @ApiModelProperty(value = "IMEI码")
    private String imei;

    @ApiModelProperty(value = "安装时间")
    private Date installTime;

    @ApiModelProperty(value = "安装人姓名")
    private String installerName;

    @ApiModelProperty(value = "安装人电话")
    private String installerPhone;

    @ApiModelProperty(value = "供应商名称")
    private String supplierName;

    @ApiModelProperty(value = "供应商电话")
    private String supplierPhone;

    @ApiModelProperty(value = "省份编码")
    private String provinceCode;

    @ApiModelProperty(value = "城市编码")
    private String cityCode;

    @ApiModelProperty(value = "区县编码")
    private String districtCode;

    @ApiModelProperty(value = "街道编码")
    private String streetCode;

    @ApiModelProperty(value = "地址")
    private String address;

    @ApiModelProperty(value = "位置描述")
    private String position;

    @ApiModelProperty(value = "经度")
    private String deviceLng;

    @ApiModelProperty(value = "纬度")
    private String deviceLat;

    @ApiModelProperty(value = "社区id")
    private String communityId;

    @ApiModelProperty(value = "楼栋")
    private String buildingId;

    @ApiModelProperty(value = "房间id")
    private String roomId;

    @ApiModelProperty(value = "巡检配置id")
    private String inspectConfigId;

    @ApiModelProperty(value = "是否在巡检中 0否 1是")
    private Integer inspectStatus;

    @ApiModelProperty(value = "删除标志: 0-正常;1-删除")
    private Integer delFlag;

    @ApiModelProperty(value = "创建人")
    private String createUser;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "更新人")
    private String updateUser;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "巡检人姓名")
    private String inspectUser;

    @ApiModelProperty(value = "巡检人电话")
    private String inspectPhone;


    @Override
    protected Serializable pkVal() {
        return this.serialCode;
    }

}
